package com.bzkj.basicinfo.domain.ncc;

import com.bzkj.basicinfo.domain.basic.vo.PrintZeroSkuInfoVo;
import com.bzkj.common.core.domain.BaseEntity;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * @TableName 动态表
 */
@Data
public class TableXXXSku extends BaseEntity implements Serializable
{
    /**
     * 是否立即生成二维码
     */
    private Boolean flag;
    /**
     * 二维码地址
     */
    private String QRCode;

    private String pkMarbasclass;

    // 商品数量
    private BigDecimal num;

    /**
     * 商品追溯码唯一标识
     */
    private String skuBarId;

    /**
     * ncc批次主键
     */
    private String pkBatchcode;

    /**
     * 批次号
     */
    private String vbatchCode;

    /**
     * 是否启用
     */
    private String enableState;

    /**
     * 时间戳
     */
    private String unixTime;

    /**
     * 主键
     */
    private Integer id;

    /**
     * 入库单据号
     */
    private String vbillcode;

    /**
     * 商品追溯码父级标识
     */
    private String skuParentId;

    /**
     * 商品追溯码级别
     */
    private String skuLevel;

    /**
     * 商品追溯码包装比例
     */
    private String skuPkgratio;

    /**
     * 单位
     */
    private String skuUnit;

    /**
     * 最小使用数量
     */
    private BigDecimal skuNnum;
    /**
     * 最小使用数量
     */
    private BigDecimal skuUserNnum;

    /**
     * 商品状态
     */
    private String skuState;

    /**
     * 标识
     */
    private String gubflag;

    /**
     * 标识
     */
    private String csflag;

    /**
     * 创建人
     */
    private String creator;

    /**
     *
     */
    private String def1;

    /**
     *
     */
    private String def2;

    /**
     *
     */
    private String def3;

    /**
     *
     */
    private String def4;

    /**
     *
     */
    private String def5;

    /**
     * 有效期
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date periodValidity;
    /**
     * 复验期
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date resetDate;

    /**
     * 物料标签容器号
     * 二级包装时：一级为包装比例的最小值-最大值，二级包装为序号
     */
    private String sortNum;

    /**
     * GMP码
     */
    private String graphid;

    /**
     * 打印标识 0未打印，1已打印
     */
    private Integer printFlag;

    /**
     * 级别：1  一级码，2 二级码
     */
    private String codeLevel;

    private Integer maxSortNum = 0;

    /**
     * 规格
     */
    private String materialspec;

    private String row;

    private String supplierCode;//供应商代码

    /**
     * 是否使用最小使用数量
     */
    private Boolean minUse;

    private Integer printNum;

    /**
     * 打印模式：0 续打；1 重打；2 重打当前； 3续打当前
     */
    private String printMode;

    private String finallyCode;

    /**
     * 零箱最小使用数量列表
     */
    private List<PrintZeroSkuInfoVo> zeroPrintList;

    private static final long serialVersionUID = 1L;
}